/**
 * 
 */
package com.myworld.web;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.env.Environment;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;

import com.myworld.utils.FastDFSClient;
import com.myworld.vo.response.Result;

/** 
 * @ClassName: FileUploadContorller 
 * @Description:文件上传 
 * @author zhuqiang
 * @date 2018年12月25日 下午2:40:21 
 */
@RestController
@RequestMapping("/file")
public class FileUploadContorller {
	Logger logger=LoggerFactory.getLogger(FileUploadContorller.class);
	
	 @Autowired
	 private FastDFSClient fastDFSClient;
	 
	 /**
	  * 用于读取application.properties 文件
	  */
	 @Autowired
	 private Environment env;
	
	/**
	 * 上传普通文件到FastDFS 服务器
	 * @param file
	 * @return
	 */
	@RequestMapping("/uoloadFastDFSFile")
	public Result uoloadFastDFSFile(MultipartFile file){
		Result result=new Result(true, "上传成功!!!");
		try{
			// 返回在FastDFS中的URL路径，这个路径是不带http://192.168.115.133/..
            String url = fastDFSClient.uploadFile(file);
            logger.info("文件保存在FastDFS中的路径："+url);
            String prefix = env.getProperty("fdfs.httpurl");  //  http://192.168.115.133/
            logger.info("文件保存在FastDFS中的访问路径："+prefix+url);
           
		}catch(Exception e){
			e.printStackTrace();
			result=new Result(false, "服务器异常");
		}finally{
			return result;
		}
	}
	
	/**
	 * 上传一张图片并生成缩略图
	 */
	@RequestMapping("/uoloadFastDFSFace")
	public Result uoloadFastDFSFace(MultipartFile file){
		Result result=new Result(true, "上传图片成功!!!");
		try{
			// 返回在FastDFS中的URL路径，这个路径是不带http://192.168.115.133/..
            String url = fastDFSClient.uploadFace(file);
            logger.info("图片保存在FastDFS中的路径："+url);
          
            String prefix = env.getProperty("fdfs.httpurl");  //  http://192.168.115.133/
            logger.info("图片保存在FastDFS中的访问路径："+prefix+url);
            
            String[] fileNameList = url.split("\\.");
            String fileName = fileNameList[0];
            String ext = fileNameList[1];

            String picSmallUrl = fileName + "_150x150." + ext;
            logger.info("图片缩约图  --保存在FastDFS中的访问路径："+prefix+picSmallUrl);
		}catch(Exception e){
			e.printStackTrace();
			result=new Result(false, "服务器异常");
		}finally{
			return result;
		}
	}
}
